package cn.cyl.basic.mapper;


import cn.cyl.basic.query.BaseQuery;
import java.util.List;

/**
 * mapper接口：部门
 */
public interface BaseMapper<T> {
    /**
     * 增加
     * @param t
     */
    void save (T t);

    /**
     * 删除
     * @param id
     */
    void del (Long id);

    /**
     * 修改
     * @param t
     */
    void update (T t);

    /**
     * 查所有
     * @return
     */
    List<T> loadAll();
    /**
     * 查一个
     * @param id
     * @return
     */
    T loadOne(Long id);

    /**
     *分页查询中的总数
     * @param baseQuery
     * @return
     */
    Integer queryCount(BaseQuery baseQuery);

    /**
     *分页中的查询的数据
     * @param baseQuery
     * @return
     */
    List<T> queryData(BaseQuery baseQuery);

    /**
     * 批量删除
     * @param ids
     */
    void patchDelete(List<Long> ids);
}
